package com.yanjue.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.yanjue.common.entity.IndexBooklistItem;
import com.yanjue.common.util.Result;
import com.yanjue.vo.BooklistBookVO;

import java.util.List;

/**
* @author yanju
* @description 针对表【index_booklist_item(精品页-书单明细)】的数据库操作Service
* @createDate 2025-01-16 12:33:44
*/
public interface IndexBooklistItemService extends IService<IndexBooklistItem> {

    /**
     * 顺序获取书单里的图书
     * @param id id
     * @param bookIds 书id
     * @param showNumber 数量
     * @param showLikeCount 是否展示喜欢
     * @return
     */
    List<BooklistBookVO> getBooklistOrderBooks(Integer id, String bookIds, Integer showNumber, Boolean showLikeCount);

    /**
     *
     * 随机获取书单图书信息
     * @param booklistId            书单ID
     * @param bookIds               图书IDs
     * @param showNumber            显示数量
     * @param clientRandomNumber    客户端当前随机编号
     * @return
     */
    List<BooklistBookVO> getBooklistRandomBooks(Integer booklistId, String bookIds, Integer showNumber, Integer clientRandomNumber, Boolean showLikeCount);

    /**
     * 根据booid获取bookVO
     * @param bookId 书id
     * @return
     */
    BooklistBookVO getBookVO(String bookId);

    /**
     * 书单换一换接口
     * @param booklistId 书单id
     * @param clientRandomNumber 客户端随机编号
     */
    Result getBooklistExchange(Integer booklistId, Integer clientRandomNumber);


    //Result getBooklistPagingBooks(Integer booklistId, Integer page, Integer limit);

    //List<BooklistBookVO> getBooklistBookVOByBookIdArray(String[] , Integer , Boolean );
}
